// class A {
//     str: string = 'a'
// }
//   class B extends A {
//     str="b"
//   }
//   class C extends A {
//     str="c"
//     constructor(str:string){
//         super()
//         this.str = str
//     }
//   }
  
//   let arr: Array<A> = [new B(),new C("c"),new A()];
  
//   let originMenusMap: Map<string, C | null> = new Map<string, C | null>(arr.map<[string, C | null]>(item => [item.str, (item instanceof C) ? item: null]));


//   originMenusMap.forEach((value,key) => {
//   console.log(key,typeof value)
    
//   });

 